#ifndef SPHERE_POINT_H
#define SPHERE_POINT_H

#include <time.h>
#include "baseVector.h"
/* pour utiliser le drawSphereLiePoint */
/* avec des Unispheres */
#include "unisphere.h"


/*************************************************************************/
/* Bezier */
/*************************************************************************/




void drawCircle (Point c,double alpha, double r);
/* alpha change de signification a partir de la, */
/* les cercles tracés seront toujours net */


/* on essaye de tracer le cercle des x aux z, */
/* puis le même avec un angle alpha d'ecart */
/* remarque: avec alpha=PI, on obtient le cercle  */
/* des x aux y */
void testDrawSphere (Point c,double alpha,double r);
/* parcours la sphere horizontalement */
/* d'un angle alpha */
void drawSphereHori (Point c,double alpha,double r);
/* parcours la sphere verticalement */
/* d'un angle alpha */
void drawSphereVerti (Point c,double alpha,double r);
/* nbcoup nombre de coupe */
void drawSphere (Point c,double R, int nbcoup,Point SPMOVE);

/* couleur specifique a chaque quadrilatère */
/* nbcoup nombre de coupe */
void drawQuadSphere (Point c,double R, int nbcoup,Point SPMOVE);

/* couleur specifique a chaque sommet */
void testDrawQuadSphere (Point c,double R, int nbcoup,Point SPMOVE);

void set_move(Point c,int nbcoup,Point SPMOVE,
	      double* SPASAlpha,double* SPASBeta,
	      unsigned char boolDrawMove);


Couleur couleur_axe(double rayon,Point surSphere,Point SPMOVE);

double random_rayon();
Point random_centre();
int random_coupes();
void stressTest(int nbsphere,int nbcoup,Point SPMOVE);

#endif
